//server直接关闭后会有情况4——读端关闭， 写端写入的时候操作系统杀掉进程。 ——但是是在写入之后才会杀掉。 不是当关闭server的时候立刻杀掉。
//而关闭client管道， server读端读到0， 那么if判断直接break， 退出进程

#include"Com.hpp"
#include"Log.hpp"

int main()
{
    int fd = open(FIFO_FILE, O_WRONLY);
    if (fd < 0) 
    {
        perror("open");
        exit(FIFO_OPEN_ERR);
    }

    //
    cout << "client open file done" << endl;  //对于服务端和客户端， 只有当两个都打开的时候， 文件才会打开， 也就是说， 当我们只运行服务端的时候， 
    //创建了一个通信信道， 但是如果想要打开这个通信信道， 只有当读端和写端同时打开的时候这个信道才能真正被打开！！！否则open阻塞
  
    string line;   //创建一个缓冲区
    while (true)
    {
        cout << "Please Entering#: ";
        getline(cin, line);    //在缓冲区里面写入数据, getline格式控制


        //写入
        write(fd, line.c_str(), line.size());    //将缓冲区的数据写入管道

    }



    close(fd);

    return 0;
}